package cn.hesion.Proxy.StaticProxy.DataBaseProxy;

/**
 * 静态代理
 * 主要完成的功能是根据订单创建时间自动按年进行分库。
 */

//动态切换数据源
public class DynamicDataSourceEntry {
    //默认数据源
    public final static String DEFAULT_SOURCE=null;
    private final static ThreadLocal<String> local = new ThreadLocal<>();

    private DynamicDataSourceEntry() {
    }

    //清空数据源
    public static void clear(){
        local.remove();
    }

    //获取正在使用的数据源
    public static String get(){
        return local.get();
    }

    //还原当前切换的数据源
    public static void restore(){
        local.set(DEFAULT_SOURCE);
    }

    //设置已知名字的数据源
    public static void set(String source){
        local.set(source);
    }
    //根据年份动态获取设置数据源
    public static void set(int year){
        local.set("DB_"+year);
    }
}
